A Simple Constraint Solver in Action Rules for the CP’05 Solver Competition
نویسندگان
چکیده
In response to the call for solvers by the CPAI’05 solver competition organizing committee, we implemented a constraint solver, called Mosar, using action rules (AR) in B-Prolog [3] particularly for this competition. The problem format used in the competition is very different from those used by practical solvers. For example, constraints are extensional numeric relations not implicit relations, and only support and conflict constraints are allowed. Our goal was to build a working solver very quickly (in one or two days) rather than to implement a winning solver. Therefore, no optimization is implemented at all. Mosar is a very simple solver. It performs forward checking for unary constraints, maintains a weak-form of interval consistency for non-binary support constraints, and maintains arc-consistency for binary support constraints. Thanks to the high descriptive power of action rules, the solver, which consists of only about 200 lines of AR and Prolog code, was completed in only one day. As there is no solver of this type available for comparison, the performance of Mosar is unclear. Mosar has successfully solved most of the sample benchmarks including the quasi-group, Domino, and all-interval series problems collected by the organizing committee. This note describes the solver and reports on the performance. It also gives several optimizations that could lead to better performance. The source code of the solver is available at: www.probp.com/mosar.
منابع مشابه
Domaines de congruence pour la programmation par contraintes
A Constraint Programming Solver (CP Solver) encouters slow convergence when propagation takes a time that is linear in the size of the domains. Such a phenomenon occurs for instance on as simple integer equations as x = 2y + 1 and x = 2z. Constraints generated for Program Verification tasks very often involve variables ranging on all the machine-representable integers. Slow convergence then pre...
متن کاملSimulation of Strap-On Boosters Separation in the Atmosphere
A numerical dynamic-aerodynamic interface for simulating the separation dynamics of constrained strap-on boosters jettisoned in the atmosphere is presented. A 6-DOF multi body dynamic solver ،using Constraint Force Equation Methodology is coupled with a numerical time dependent Euler flow solver. An automatic dynamic mesh updating procedure is employed using smoothing and l...
متن کاملSUNNY-CP and the MiniZinc challenge
In Constraint Programming (CP) a portfolio solver combines a variety of different constraint solvers for solving a given problem. This fairly recent approach enables to significantly boost the performance of single solvers, especially when multicore architectures are exploited. In this work we give a brief overview of the portfolio solver sunny-cp, and we discuss its performance in the MiniZinc...
متن کاملMiniZinc: Towards a Standard CP Modelling Language
There is no standard modelling language for constraint programming (CP) problems. Most solvers have their own modelling language. This makes it difficult for modellers to experiment with different solvers for a problem. In this paper we present MiniZinc, a simple but expressive CP modelling language which is suitable for modelling problems for a range of solvers and provides a reasonable compro...
متن کاملA Rule-Constructive Geometric Constraint Solver
This work reports on the implementation of a two-dimensional, varia-tional geometric constraint solver based on a constructive approach. The solver computes a solution in two phases. First, using rewrite rules, the solver builds a sequence of construction steps. Then, the construction steps are carried out to generate an instance of the geometric object for the current dimension values. We disc...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005